package com.zc.operator.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 场站对象 charge_station
 *
 * @author glb
 * @date 2023-05-17
 */
public class ChargeStation extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 场站id */
    private Long chargeStationId;

    /** 部门id */
    private Long deptId;

    /** 场站编号 */
    @Excel(name = "场站编号")
    private String chargeStationCode;

    /** 运营商编号 */
    @Excel(name = "运营商编号")
    private String operatorCode;

    /** 运营商名称 */
    @Excel(name = "运营商名称")
    private String operatorName;

    /** 场站名称 */
    @Excel(name = "场站名称")
    private String chargeStationName;

    /** 场站类型 */
    @Excel(name = "场站类型")
    private String chargeStationType;

    /** 场站状态 */
    @Excel(name = "场站状态")
    private String chargeStationStatus;

    /** 行政区域 */
    @Excel(name = "行政区域")
    private String administrativeArea;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String chargeStationAddress;

    /** 经度 */
    @Excel(name = "经度")
    private String chargeStationLongitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String chargeStationLatitude;

    /** 国标接口 */
    @Excel(name = "国标接口")
    private String nationalStandardInterface;

    /** 辅源电压 */
    @Excel(name = "辅源电压")
    private String auxiliarySourceVoltage;

    /** 枪类型 */
    @Excel(name = "枪类型")
    private String gunType;

    /** 支付方式 */
    @Excel(name = "支付方式")
    private String paymentMethod;

    /** 免费停车 */
    @Excel(name = "免费停车")
    private String parking;

    /** 停车费编号 */
    @Excel(name = "停车费编号")
    private String parkingRate;

    /** 服务费编号 */
    @Excel(name = "服务费编号")
    private String serviceCharge;

    /** 营业开始时间 */
    //@JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "营业开始时间")
    private String chargeStationStartTime;

    /** 营业结束时间 */
    //@JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "营业结束时间")
    private String chargeStationEndTime;

    /** 支付渠道 */
    @Excel(name = "支付渠道")
    private String paymentChannels;

    /** 小程序名称 */
    @Excel(name = "小程序名称")
    private String appletName;

    /** 场站设施 */
    @Excel(name = "场站设施")
    private String chargeStationFacilities;

    /** 场站评分 */
    @Excel(name = "场站评分")
    private String chargeStationScore;

    /** 场站照片 */
    @Excel(name = "场站照片")
    private String chargeStationPhoto;

    /** 场站电话 */
    @Excel(name = "场站电话")
    private String chargeStationPhone;

    /** 场站备注 */
    @Excel(name = "场站备注")
    private String chargeStationRemark;

    @Excel(name = "价格类型Id")
    private String priceTypeId;

    /** 价格类型编号 */
    @Excel(name = "价格类型编号")
    private String priceTypeCode;
    /** 价格类型编号 */
    @Excel(name = "价格类型名称")
    private String priceTypeName;

    /** 场站实时功率 */
    @Excel(name = "场站实时功率")
    private String stationRealPower;

    /** 充电桩分配功率 */
    @Excel(name = "充电桩分配功率")
    private String chargeStationAllocationPower;

    /** 充电桩实时功率 */
    @Excel(name = "充电桩实时功率")
    private String chargeStationRealPower;

    //电价
    private BigDecimal electricCharge;

    //原价
    private BigDecimal originalPrice;

    //服务费
    private BigDecimal serviceFee;

    //停车费
    private BigDecimal stopFee;

    //站内设备电流类型
    private String chargeStationCurrentType;

    //电价区间开始时间
    private String startTime;

    //电价区间结束时间
    private String endTime;

    //客户openid
    private String customCode;

    //客户是否收藏
    private String isCollect;

    //直流设备数量
    private int dcDeviceNumber;

    //直流设备数量(可用)
    private int dcDeviceNumberFree;

    //交流设备数量
    private int acDeviceNumber;

    //交流设备数量(可用)
    private int acDeviceNumberFree;

    //站点标签
    private List<String> tagList;

    //设备价格list
    private List<ChargeStationPrice> priceList;

    //相距当前位置距离
    private BigDecimal distance;

    //商户号
    private String mchId;

    //商户密钥
    private String mchKey;

    //车位数量
    private Integer parkNum;

    private String buildingSite;

    public void setChargeStationId(Long chargeStationId)
    {
        this.chargeStationId = chargeStationId;
    }

    public Long getChargeStationId()
    {
        return chargeStationId;
    }
    public void setChargeStationCode(String chargeStationCode)
    {
        this.chargeStationCode = chargeStationCode;
    }

    public String getChargeStationCode()
    {
        return chargeStationCode;
    }
    public void setOperatorCode(String operatorCode)
    {
        this.operatorCode = operatorCode;
    }

    public String getOperatorCode()
    {
        return operatorCode;
    }
    public void setChargeStationName(String chargeStationName)
    {
        this.chargeStationName = chargeStationName;
    }

    public String getChargeStationName()
    {
        return chargeStationName;
    }
    public void setChargeStationType(String chargeStationType)
    {
        this.chargeStationType = chargeStationType;
    }

    public String getChargeStationType()
    {
        return chargeStationType;
    }
    public void setChargeStationStatus(String chargeStationStatus)
    {
        this.chargeStationStatus = chargeStationStatus;
    }

    public String getChargeStationStatus()
    {
        return chargeStationStatus;
    }
    public void setAdministrativeArea(String administrativeArea)
    {
        this.administrativeArea = administrativeArea;
    }

    public String getAdministrativeArea()
    {
        return administrativeArea;
    }
    public void setChargeStationAddress(String chargeStationAddress)
    {
        this.chargeStationAddress = chargeStationAddress;
    }

    public String getChargeStationAddress()
    {
        return chargeStationAddress;
    }
    public void setChargeStationLongitude(String chargeStationLongitude)
    {
        this.chargeStationLongitude = chargeStationLongitude;
    }

    public String getChargeStationLongitude()
    {
        return chargeStationLongitude;
    }
    public void setChargeStationLatitude(String chargeStationLatitude)
    {
        this.chargeStationLatitude = chargeStationLatitude;
    }

    public String getChargeStationLatitude()
    {
        return chargeStationLatitude;
    }
    public void setNationalStandardInterface(String nationalStandardInterface)
    {
        this.nationalStandardInterface = nationalStandardInterface;
    }

    public String getNationalStandardInterface()
    {
        return nationalStandardInterface;
    }
    public void setAuxiliarySourceVoltage(String auxiliarySourceVoltage)
    {
        this.auxiliarySourceVoltage = auxiliarySourceVoltage;
    }

    public String getAuxiliarySourceVoltage()
    {
        return auxiliarySourceVoltage;
    }
    public void setGunType(String gunType)
    {
        this.gunType = gunType;
    }

    public String getGunType()
    {
        return gunType;
    }
    public void setPaymentMethod(String paymentMethod)
    {
        this.paymentMethod = paymentMethod;
    }

    public String getPaymentMethod()
    {
        return paymentMethod;
    }
    public void setParking(String parking)
    {
        this.parking = parking;
    }

    public String getParking()
    {
        return parking;
    }
    public void setParkingRate(String parkingRate)
    {
        this.parkingRate = parkingRate;
    }

    public String getParkingRate()
    {
        return parkingRate;
    }
    public void setServiceCharge(String serviceCharge)
    {
        this.serviceCharge = serviceCharge;
    }

    public String getServiceCharge()
    {
        return serviceCharge;
    }
    public void setChargeStationStartTime(String chargeStationStartTime)
    {
        this.chargeStationStartTime = chargeStationStartTime;
    }

    public String getChargeStationStartTime()
    {
        return chargeStationStartTime;
    }
    public void setChargeStationEndTime(String chargeStationEndTime)
    {
        this.chargeStationEndTime = chargeStationEndTime;
    }

    public String getChargeStationEndTime()
    {
        return chargeStationEndTime;
    }
    public void setPaymentChannels(String paymentChannels)
    {
        this.paymentChannels = paymentChannels;
    }

    public String getPaymentChannels()
    {
        return paymentChannels;
    }
    public void setAppletName(String appletName)
    {
        this.appletName = appletName;
    }

    public String getAppletName()
    {
        return appletName;
    }
    public void setChargeStationFacilities(String chargeStationFacilities)
    {
        this.chargeStationFacilities = chargeStationFacilities;
    }

    public String getChargeStationFacilities()
    {
        return chargeStationFacilities;
    }
    public void setChargeStationScore(String chargeStationScore)
    {
        this.chargeStationScore = chargeStationScore;
    }

    public String getChargeStationScore()
    {
        return chargeStationScore;
    }
    public void setChargeStationPhoto(String chargeStationPhoto)
    {
        this.chargeStationPhoto = chargeStationPhoto;
    }

    public String getChargeStationPhoto()
    {
        return chargeStationPhoto;
    }
    public void setChargeStationPhone(String chargeStationPhone)
    {
        this.chargeStationPhone = chargeStationPhone;
    }

    public String getChargeStationPhone()
    {
        return chargeStationPhone;
    }
    public void setChargeStationRemark(String chargeStationRemark)
    {
        this.chargeStationRemark = chargeStationRemark;
    }

    public String getChargeStationRemark()
    {
        return chargeStationRemark;
    }

    public String getOperatorName() {
        return operatorName;
    }

    public void setOperatorName(String operatorName) {
        this.operatorName = operatorName;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public BigDecimal getElectricCharge() {
        return electricCharge;
    }

    public void setElectricCharge(BigDecimal electricCharge) {
        this.electricCharge = electricCharge;
    }

    public BigDecimal getOriginalPrice() {
        return originalPrice;
    }

    public void setOriginalPrice(BigDecimal originalPrice) {
        this.originalPrice = originalPrice;
    }

    public BigDecimal getServiceFee() {
        return serviceFee;
    }

    public void setServiceFee(BigDecimal serviceFee) {
        this.serviceFee = serviceFee;
    }

    public String getChargeStationCurrentType() {
        return chargeStationCurrentType;
    }

    public void setChargeStationCurrentType(String chargeStationCurrentType) {
        this.chargeStationCurrentType = chargeStationCurrentType;
    }

    public BigDecimal getStopFee() {
        return stopFee;
    }

    public void setStopFee(BigDecimal stopFee) {
        this.stopFee = stopFee;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public String getCustomCode() {
        return customCode;
    }

    public void setCustomCode(String customCode) {
        this.customCode = customCode;
    }

    public String getIsCollect() {
        return isCollect;
    }

    public void setIsCollect(String isCollect) {
        this.isCollect = isCollect;
    }

    public int getDcDeviceNumber() {
        return dcDeviceNumber;
    }

    public void setDcDeviceNumber(int dcDeviceNumber) {
        this.dcDeviceNumber = dcDeviceNumber;
    }

    public int getAcDeviceNumber() {
        return acDeviceNumber;
    }

    public void setAcDeviceNumber(int acDeviceNumber) {
        this.acDeviceNumber = acDeviceNumber;
    }

    public int getDcDeviceNumberFree() {
        return dcDeviceNumberFree;
    }

    public void setDcDeviceNumberFree(int dcDeviceNumberFree) {
        this.dcDeviceNumberFree = dcDeviceNumberFree;
    }

    public int getAcDeviceNumberFree() {
        return acDeviceNumberFree;
    }

    public void setAcDeviceNumberFree(int acDeviceNumberFree) {
        this.acDeviceNumberFree = acDeviceNumberFree;
    }

    public List<ChargeStationPrice> getPriceList() {
        return priceList;
    }

    public void setPriceList(List<ChargeStationPrice> priceList) {
        this.priceList = priceList;
    }

    public List<String> getTagList() {
        return tagList;
    }

    public void setTagList(List<String> tagList) {
        this.tagList = tagList;
    }

    public String getPriceTypeId() {
        return priceTypeId;
    }

    public void setPriceTypeId(String priceTypeId) {
        this.priceTypeId = priceTypeId;
    }

    public String getPriceTypeCode() {
        return priceTypeCode;
    }

    public void setPriceTypeCode(String priceTypeCode) {
        this.priceTypeCode = priceTypeCode;
    }

    public String getPriceTypeName() {
        return priceTypeName;
    }

    public void setPriceTypeName(String priceTypeName) {
        this.priceTypeName = priceTypeName;
    }

    public String getStationRealPower() {
        return stationRealPower;
    }

    public void setStationRealPower(String stationRealPower) {
        this.stationRealPower = stationRealPower;
    }

    public String getChargeStationAllocationPower() {
        return chargeStationAllocationPower;
    }

    public void setChargeStationAllocationPower(String chargeStationAllocationPower) {
        this.chargeStationAllocationPower = chargeStationAllocationPower;
    }

    public String getChargeStationRealPower() {
        return chargeStationRealPower;
    }

    public void setChargeStationRealPower(String chargeStationRealPower) {
        this.chargeStationRealPower = chargeStationRealPower;
    }

    public BigDecimal getDistance() {
        return distance;
    }

    public void setDistance(BigDecimal distance) {
        this.distance = distance;
    }

    public String getMchId() {
        return mchId;
    }

    public void setMchId(String mchId) {
        this.mchId = mchId;
    }

    public String getMchKey() {
        return mchKey;
    }

    public void setMchKey(String mchKey) {
        this.mchKey = mchKey;
    }

    public Integer getParkNum() {
        return parkNum;
    }

    public void setParkNum(Integer parkNum) {
        this.parkNum = parkNum;
    }

    public String getBuildingSite() {
        return buildingSite;
    }

    public void setBuildingSite(String buildingSite) {
        this.buildingSite = buildingSite;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("chargeStationId", getChargeStationId())
                .append("chargeStationCode", getChargeStationCode())
                .append("operatorCode", getOperatorCode())
                .append("chargeStationName", getChargeStationName())
                .append("chargeStationType", getChargeStationType())
                .append("chargeStationStatus", getChargeStationStatus())
                .append("administrativeArea", getAdministrativeArea())
                .append("chargeStationAddress", getChargeStationAddress())
                .append("chargeStationLongitude", getChargeStationLongitude())
                .append("chargeStationLatitude", getChargeStationLatitude())
                .append("nationalStandardInterface", getNationalStandardInterface())
                .append("auxiliarySourceVoltage", getAuxiliarySourceVoltage())
                .append("gunType", getGunType())
                .append("paymentMethod", getPaymentMethod())
                .append("parking", getParking())
                .append("parkingRate", getParkingRate())
                .append("serviceCharge", getServiceCharge())
                .append("chargeStationStartTime", getChargeStationStartTime())
                .append("chargeStationEndTime", getChargeStationEndTime())
                .append("paymentChannels", getPaymentChannels())
                .append("appletName", getAppletName())
                .append("chargeStationFacilities", getChargeStationFacilities())
                .append("chargeStationScore", getChargeStationScore())
                .append("chargeStationPhoto", getChargeStationPhoto())
                .append("chargeStationPhone", getChargeStationPhone())
                .append("chargeStationRemark", getChargeStationRemark())
                .append("operatorName", getOperatorName())
                .append("deptId", getDeptId())
                .append("priceTypeCode", getPriceTypeCode())
                .append("priceTypeName", getPriceTypeName())
                .toString();

    }
}
